Kafka面试题基础27问:应该都会的呀! 您所在的位置:网站首页 kafka 队列 Kafka面试题基础27问:应该都会的呀!

Kafka面试题基础27问:应该都会的呀!

2023-10-09 23:26| 来源: 网络整理| 查看: 265

消息队列也叫 MQ(Message Queue)。Kafka作为消息队列中的优秀平台,被很多公司使用,是一种高吞吐量的分布式发布订阅消息系统,本篇给大家总结了27道Kafka知识点或者说面试题,持续更新中。。。

1.什么是kafka?

Apache Kafka是由Apache开发的一种发布订阅消息系统。

2.kafka的3个关键功能?发布和订阅记录流,类似于消息队列或企业消息传递系统。以容错的持久方式存储记录流。处理记录流。3.kafka通常用于两大类应用?建立实时流数据管道,以可靠地在系统或应用程序之间获取数据构建实时流应用程序,以转换或响应数据流4.kafka特性?消息持久化高吞吐量扩展性多客户端支持Kafka Streams安全机制数据备份轻量级消息压缩5.kafka的5个核心Api?Producer API Consumer APIStreams API Connector API Admin API 6.什么是Broker(代理)?

Kafka集群中,一个kafka实例被称为一个代理(Broker)节点。

7.什么是Producer(生产者)?

消息的生产者被称为Producer。

Producer将消息发送到集群指定的主题中存储,同时也自定义算法决定将消息记录发送到哪个分区?

8.什么是Consumer(消费者)?

消息的消费者,从kafka集群中指定的主题读取消息。

9.什么是Topic(主题)?

主题,kafka通过不同的主题却分不同的业务类型的消息记录。

10.什么是Partition(分区)?

每一个Topic可以有一个或者多个分区(Partition)。

11.分区和代理节点的关系?

一个分区只对应一个Broker,一个Broker可以管理多个分区。

12.什么是副本(Replication)?

每个主题在创建时会要求制定它的副本数(默认1)。

13.什么是记录(Record)?

实际写入到kafka集群并且可以被消费者读取的数据。

每条记录包含一个键、值和时间戳。

14.kafka适合哪些场景?

日志收集、消息系统、活动追踪、运营指标、流式处理、时间源等。

15.kafka磁盘选用上?

SSD的性能比普通的磁盘好,这个大家都知道,实际中我们用普通磁盘即可。它使用的方式多是顺序读写操作,一定程度上规避了机械磁盘最大的劣势,即随机读写操作慢,因此SSD的没有太大优势。

16.使用RAID的优势?提供冗余的磁盘存储空间提供负载均衡17.磁盘容量规划需要考虑到几个因素?新增消息数消息留存时间平均消息大小备份数是否启用压缩18.Broker使用单个?多个文件目录路径参数?

log.dirs 多个

log.dir 单个

19.一般来说选择哪个参数配置路径?好处?

log.dirs

好处:

提升读写性能,多块物理磁盘同时读写高吞吐。

故障转移。一块磁盘挂了转移到另一个上。

20.自动创建主题的相关参数是?

auto.create.topics.enable

21.解决kafka消息丢失问题?不要使用 producer.send(msg),而要使用 producer.send(msg, callback)。设置 acks = all。设置 retries 为一个较大的值。设置 unclean.leader.election.enable = false。设置 replication.factor >= 3。设置 min.insync.replicas > 1。确保 replication.factor > min.insync.replicas。确保消息消费完成再提交。22.如何自定分区策略?

显式地配置生产者端的参数partitioner.class

参数为你实现类的 全限定类名,一般来说实现partition方法即可。

23.kafka压缩消息可能发生的地方?

Producer 、Broker。

24.kafka消息重复问题?

做好幂等。

数据库方面可以(唯一键和主键)避免重复。

在业务上做控制。

25.你知道的kafka监控工具?JMXTool 工具Kafka ManageBurrowJMXTrans + InfluxDB + GrafanaConfluent Control Cente26.kafka系统支持两种不同发送方式?

异步模式

同步模式

27.消费者和消费者组区别?

一个消费者组,可以有一个或者多个消费者程序。

消费者组名(GroupID)一般由具有唯一性字符串表示。

如果一个消费者组订阅了主题,则该主题每个分区只能分配给某一个消费者组中的某一个消费者程序。

参考:

《Kafka并不难学》《kafka入门与实践》极客时间:Kafka核心技术与实战http://kafka.apache.org/

新人博主求3连🙏🙏🙏。

文章持续更新中,⛽️。另外 博主整理 + 原创 15万字面试题,包括17个专题。欢迎大家关注“Java小咖秀”回复“面试”即可获得Java小咖秀面试手册.pdf



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有